
#include "vehiculo.h" 
#include <string>
#include <iostream>
#include <cassert>


int Vehiculo::ctdadAutos = 0 ; 
int Vehiculo::ctdadPolicias = 0 ; 
int Vehiculo::ctdadAmbulancias = 0 ; 

using namespace std ;

int main (void){ 

	for ( int i = 0 ; i < 10 ; i++ ) { 
		Vehiculo * _auto = new Auto() ; 
		if ( !_auto->getNombre().compare("Auto_"+std::to_string(i))){
			cout<<"assert( !_auto->getNombre().compare(\"Auto_"  << i << "\") ) ... PASSED" << endl ; 
		} else { 
			assert( !_auto->getNombre().compare("Auto_" + std::to_string(i)) ) ;
		} 

		if ( _auto->getPrioridad()==1 ) { 
			cout<<"assert( _auto->getPrioridad()==1 ) ... PASSED" << endl ;
		} else { 
			assert( _auto->getPrioridad()==1 ) ;
		}
		delete (_auto) ; 
	}

	for ( int i = 0 ; i < 10 ; i++ ) { 
		Vehiculo * amb = new Ambulancia() ; 
		if ( !amb->getNombre().compare("Ambulancia_"+std::to_string(i))){
			cout<<"assert( !amb->getNombre().compare(\"Ambulancia_"  << i << "\") ) ... PASSED" << endl ; 
		} else { 
			assert( !amb->getNombre().compare("Ambulancia_" + std::to_string(i)) ) ;
		} 

		if ( amb->getPrioridad()==3 ) { 
			cout<<"assert( amb->getPrioridad()==3 ) ... PASSED" << endl ;
		} else { 
			assert( amb->getPrioridad()==3 ) ;
		}
		delete (amb) ; 
	}

	for ( int i = 0 ; i < 10 ; i++ ) { 
		Vehiculo * pol = new Policia() ; 
		if ( !pol->getNombre().compare("Policia_"+std::to_string(i))){
			cout<<"assert( !pol->getNombre().compare(\"Policia_"  << i << "\") ) ... PASSED" << endl ; 
		} else { 
			assert( !pol->getNombre().compare("Policia_" + std::to_string(i)) ) ;
		} 

		if ( pol->getPrioridad()==3 ) { 
			cout<<"assert( pol->getPrioridad()==3 ) ... PASSED" << endl ;
		} else { 
			assert( pol->getPrioridad()==3 ) ;
		}
		delete (pol) ; 
	}

}
 
